namespace ColladaDotNet
{
	/// <remarks/>
    
	[System.SerializableAttribute()]
    
    
	[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true, Namespace="http://www.collada.org/2005/11/COLLADASchema")]
	[System.Xml.Serialization.XmlRootAttribute(Namespace="http://www.collada.org/2005/11/COLLADASchema", IsNullable=false)]
	public partial class animation_clip {
        
		private asset assetField;
        
		private InstanceWithExtra[] instance_animationField;
        
		private extra[] extraField;
        
		private string idField;
        
		private string nameField;
        
		private double startField;
        
		private double endField;
        
		private bool endFieldSpecified;
        
		public animation_clip() {
			this.startField = 0;
		}
        
		/// <remarks/>
		public asset asset {
			get {
				return this.assetField;
			}
			set {
				this.assetField = value;
			}
		}
        
		/// <remarks/>
		[System.Xml.Serialization.XmlElementAttribute("instance_animation")]
		public InstanceWithExtra[] instance_animation {
			get {
				return this.instance_animationField;
			}
			set {
				this.instance_animationField = value;
			}
		}
        
		/// <remarks/>
		[System.Xml.Serialization.XmlElementAttribute("extra")]
		public extra[] extra {
			get {
				return this.extraField;
			}
			set {
				this.extraField = value;
			}
		}
        
		/// <remarks/>
		[System.Xml.Serialization.XmlAttributeAttribute(DataType="ID")]
		public string id {
			get {
				return this.idField;
			}
			set {
				this.idField = value;
			}
		}
        
		/// <remarks/>
		[System.Xml.Serialization.XmlAttributeAttribute(DataType="NCName")]
		public string name {
			get {
				return this.nameField;
			}
			set {
				this.nameField = value;
			}
		}
        
		/// <remarks/>
		[System.Xml.Serialization.XmlAttributeAttribute()]
		[System.ComponentModel.DefaultValueAttribute(0)]
		public double start {
			get {
				return this.startField;
			}
			set {
				this.startField = value;
			}
		}
        
		/// <remarks/>
		[System.Xml.Serialization.XmlAttributeAttribute()]
		public double end {
			get {
				return this.endField;
			}
			set {
				this.endField = value;
			}
		}
        
		/// <remarks/>
		[System.Xml.Serialization.XmlIgnoreAttribute()]
		public bool endSpecified {
			get {
				return this.endFieldSpecified;
			}
			set {
				this.endFieldSpecified = value;
			}
		}
	}
}